#ifndef _KEY_H
	#define _KEY_H
	
#include "stm32f10x.h"

extern u32 TimingDelay;

#define RB1 GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_0)
#define RB2 GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_8)
#define RB3 GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_1)
#define RB4 GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_2)

#define key1 1
#define key2 2
#define key3 3
#define key4 4

#define state_detecting 0
#define state_setting 1
#define set_limit0 10
#define set_limit1 11
#define set_limit2 12

#define liquid_level0 0
#define liquid_level1 1
#define liquid_level2 2
#define liquid_level3 3

void key_init(void);
void delay_ms(u32 nTime);
u8 key_scan(void);
void write_data(u8 addr,u8 data);
u8 read_data(u8 addr);
void state_get(void);
u8 level_get(u8 h);

#endif